package org.hxyjs.entity;

import java.util.ArrayList;
import java.util.List;

public class ParentsExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Integer offset;

    public ParentsExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andPnoIsNull() {
            addCriterion("pno is null");
            return (Criteria) this;
        }

        public Criteria andPnoIsNotNull() {
            addCriterion("pno is not null");
            return (Criteria) this;
        }

        public Criteria andPnoEqualTo(String value) {
            addCriterion("pno =", value, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoNotEqualTo(String value) {
            addCriterion("pno <>", value, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoGreaterThan(String value) {
            addCriterion("pno >", value, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoGreaterThanOrEqualTo(String value) {
            addCriterion("pno >=", value, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoLessThan(String value) {
            addCriterion("pno <", value, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoLessThanOrEqualTo(String value) {
            addCriterion("pno <=", value, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoLike(String value) {
            addCriterion("pno like", value, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoNotLike(String value) {
            addCriterion("pno not like", value, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoIn(List<String> values) {
            addCriterion("pno in", values, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoNotIn(List<String> values) {
            addCriterion("pno not in", values, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoBetween(String value1, String value2) {
            addCriterion("pno between", value1, value2, "pno");
            return (Criteria) this;
        }

        public Criteria andPnoNotBetween(String value1, String value2) {
            addCriterion("pno not between", value1, value2, "pno");
            return (Criteria) this;
        }

        public Criteria andPimgIsNull() {
            addCriterion("pImg is null");
            return (Criteria) this;
        }

        public Criteria andPimgIsNotNull() {
            addCriterion("pImg is not null");
            return (Criteria) this;
        }

        public Criteria andPimgEqualTo(String value) {
            addCriterion("pImg =", value, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgNotEqualTo(String value) {
            addCriterion("pImg <>", value, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgGreaterThan(String value) {
            addCriterion("pImg >", value, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgGreaterThanOrEqualTo(String value) {
            addCriterion("pImg >=", value, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgLessThan(String value) {
            addCriterion("pImg <", value, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgLessThanOrEqualTo(String value) {
            addCriterion("pImg <=", value, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgLike(String value) {
            addCriterion("pImg like", value, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgNotLike(String value) {
            addCriterion("pImg not like", value, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgIn(List<String> values) {
            addCriterion("pImg in", values, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgNotIn(List<String> values) {
            addCriterion("pImg not in", values, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgBetween(String value1, String value2) {
            addCriterion("pImg between", value1, value2, "pimg");
            return (Criteria) this;
        }

        public Criteria andPimgNotBetween(String value1, String value2) {
            addCriterion("pImg not between", value1, value2, "pimg");
            return (Criteria) this;
        }

        public Criteria andPnameIsNull() {
            addCriterion("pName is null");
            return (Criteria) this;
        }

        public Criteria andPnameIsNotNull() {
            addCriterion("pName is not null");
            return (Criteria) this;
        }

        public Criteria andPnameEqualTo(String value) {
            addCriterion("pName =", value, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameNotEqualTo(String value) {
            addCriterion("pName <>", value, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameGreaterThan(String value) {
            addCriterion("pName >", value, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameGreaterThanOrEqualTo(String value) {
            addCriterion("pName >=", value, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameLessThan(String value) {
            addCriterion("pName <", value, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameLessThanOrEqualTo(String value) {
            addCriterion("pName <=", value, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameLike(String value) {
            addCriterion("pName like", value, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameNotLike(String value) {
            addCriterion("pName not like", value, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameIn(List<String> values) {
            addCriterion("pName in", values, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameNotIn(List<String> values) {
            addCriterion("pName not in", values, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameBetween(String value1, String value2) {
            addCriterion("pName between", value1, value2, "pname");
            return (Criteria) this;
        }

        public Criteria andPnameNotBetween(String value1, String value2) {
            addCriterion("pName not between", value1, value2, "pname");
            return (Criteria) this;
        }

        public Criteria andPsexIsNull() {
            addCriterion("pSex is null");
            return (Criteria) this;
        }

        public Criteria andPsexIsNotNull() {
            addCriterion("pSex is not null");
            return (Criteria) this;
        }

        public Criteria andPsexEqualTo(String value) {
            addCriterion("pSex =", value, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexNotEqualTo(String value) {
            addCriterion("pSex <>", value, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexGreaterThan(String value) {
            addCriterion("pSex >", value, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexGreaterThanOrEqualTo(String value) {
            addCriterion("pSex >=", value, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexLessThan(String value) {
            addCriterion("pSex <", value, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexLessThanOrEqualTo(String value) {
            addCriterion("pSex <=", value, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexLike(String value) {
            addCriterion("pSex like", value, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexNotLike(String value) {
            addCriterion("pSex not like", value, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexIn(List<String> values) {
            addCriterion("pSex in", values, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexNotIn(List<String> values) {
            addCriterion("pSex not in", values, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexBetween(String value1, String value2) {
            addCriterion("pSex between", value1, value2, "psex");
            return (Criteria) this;
        }

        public Criteria andPsexNotBetween(String value1, String value2) {
            addCriterion("pSex not between", value1, value2, "psex");
            return (Criteria) this;
        }

        public Criteria andPageIsNull() {
            addCriterion("pAge is null");
            return (Criteria) this;
        }

        public Criteria andPageIsNotNull() {
            addCriterion("pAge is not null");
            return (Criteria) this;
        }

        public Criteria andPageEqualTo(String value) {
            addCriterion("pAge =", value, "page");
            return (Criteria) this;
        }

        public Criteria andPageNotEqualTo(String value) {
            addCriterion("pAge <>", value, "page");
            return (Criteria) this;
        }

        public Criteria andPageGreaterThan(String value) {
            addCriterion("pAge >", value, "page");
            return (Criteria) this;
        }

        public Criteria andPageGreaterThanOrEqualTo(String value) {
            addCriterion("pAge >=", value, "page");
            return (Criteria) this;
        }

        public Criteria andPageLessThan(String value) {
            addCriterion("pAge <", value, "page");
            return (Criteria) this;
        }

        public Criteria andPageLessThanOrEqualTo(String value) {
            addCriterion("pAge <=", value, "page");
            return (Criteria) this;
        }

        public Criteria andPageLike(String value) {
            addCriterion("pAge like", value, "page");
            return (Criteria) this;
        }

        public Criteria andPageNotLike(String value) {
            addCriterion("pAge not like", value, "page");
            return (Criteria) this;
        }

        public Criteria andPageIn(List<String> values) {
            addCriterion("pAge in", values, "page");
            return (Criteria) this;
        }

        public Criteria andPageNotIn(List<String> values) {
            addCriterion("pAge not in", values, "page");
            return (Criteria) this;
        }

        public Criteria andPageBetween(String value1, String value2) {
            addCriterion("pAge between", value1, value2, "page");
            return (Criteria) this;
        }

        public Criteria andPageNotBetween(String value1, String value2) {
            addCriterion("pAge not between", value1, value2, "page");
            return (Criteria) this;
        }

        public Criteria andPphoneIsNull() {
            addCriterion("pPhone is null");
            return (Criteria) this;
        }

        public Criteria andPphoneIsNotNull() {
            addCriterion("pPhone is not null");
            return (Criteria) this;
        }

        public Criteria andPphoneEqualTo(String value) {
            addCriterion("pPhone =", value, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneNotEqualTo(String value) {
            addCriterion("pPhone <>", value, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneGreaterThan(String value) {
            addCriterion("pPhone >", value, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneGreaterThanOrEqualTo(String value) {
            addCriterion("pPhone >=", value, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneLessThan(String value) {
            addCriterion("pPhone <", value, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneLessThanOrEqualTo(String value) {
            addCriterion("pPhone <=", value, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneLike(String value) {
            addCriterion("pPhone like", value, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneNotLike(String value) {
            addCriterion("pPhone not like", value, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneIn(List<String> values) {
            addCriterion("pPhone in", values, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneNotIn(List<String> values) {
            addCriterion("pPhone not in", values, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneBetween(String value1, String value2) {
            addCriterion("pPhone between", value1, value2, "pphone");
            return (Criteria) this;
        }

        public Criteria andPphoneNotBetween(String value1, String value2) {
            addCriterion("pPhone not between", value1, value2, "pphone");
            return (Criteria) this;
        }

        public Criteria andPpwdIsNull() {
            addCriterion("pPwd is null");
            return (Criteria) this;
        }

        public Criteria andPpwdIsNotNull() {
            addCriterion("pPwd is not null");
            return (Criteria) this;
        }

        public Criteria andPpwdEqualTo(String value) {
            addCriterion("pPwd =", value, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdNotEqualTo(String value) {
            addCriterion("pPwd <>", value, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdGreaterThan(String value) {
            addCriterion("pPwd >", value, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdGreaterThanOrEqualTo(String value) {
            addCriterion("pPwd >=", value, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdLessThan(String value) {
            addCriterion("pPwd <", value, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdLessThanOrEqualTo(String value) {
            addCriterion("pPwd <=", value, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdLike(String value) {
            addCriterion("pPwd like", value, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdNotLike(String value) {
            addCriterion("pPwd not like", value, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdIn(List<String> values) {
            addCriterion("pPwd in", values, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdNotIn(List<String> values) {
            addCriterion("pPwd not in", values, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdBetween(String value1, String value2) {
            addCriterion("pPwd between", value1, value2, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPpwdNotBetween(String value1, String value2) {
            addCriterion("pPwd not between", value1, value2, "ppwd");
            return (Criteria) this;
        }

        public Criteria andPidIsNull() {
            addCriterion("pId is null");
            return (Criteria) this;
        }

        public Criteria andPidIsNotNull() {
            addCriterion("pId is not null");
            return (Criteria) this;
        }

        public Criteria andPidEqualTo(String value) {
            addCriterion("pId =", value, "pid");
            return (Criteria) this;
        }

        public Criteria andPidNotEqualTo(String value) {
            addCriterion("pId <>", value, "pid");
            return (Criteria) this;
        }

        public Criteria andPidGreaterThan(String value) {
            addCriterion("pId >", value, "pid");
            return (Criteria) this;
        }

        public Criteria andPidGreaterThanOrEqualTo(String value) {
            addCriterion("pId >=", value, "pid");
            return (Criteria) this;
        }

        public Criteria andPidLessThan(String value) {
            addCriterion("pId <", value, "pid");
            return (Criteria) this;
        }

        public Criteria andPidLessThanOrEqualTo(String value) {
            addCriterion("pId <=", value, "pid");
            return (Criteria) this;
        }

        public Criteria andPidLike(String value) {
            addCriterion("pId like", value, "pid");
            return (Criteria) this;
        }

        public Criteria andPidNotLike(String value) {
            addCriterion("pId not like", value, "pid");
            return (Criteria) this;
        }

        public Criteria andPidIn(List<String> values) {
            addCriterion("pId in", values, "pid");
            return (Criteria) this;
        }

        public Criteria andPidNotIn(List<String> values) {
            addCriterion("pId not in", values, "pid");
            return (Criteria) this;
        }

        public Criteria andPidBetween(String value1, String value2) {
            addCriterion("pId between", value1, value2, "pid");
            return (Criteria) this;
        }

        public Criteria andPidNotBetween(String value1, String value2) {
            addCriterion("pId not between", value1, value2, "pid");
            return (Criteria) this;
        }

        public Criteria andPstateIsNull() {
            addCriterion("pState is null");
            return (Criteria) this;
        }

        public Criteria andPstateIsNotNull() {
            addCriterion("pState is not null");
            return (Criteria) this;
        }

        public Criteria andPstateEqualTo(Integer value) {
            addCriterion("pState =", value, "pstate");
            return (Criteria) this;
        }

        public Criteria andPstateNotEqualTo(Integer value) {
            addCriterion("pState <>", value, "pstate");
            return (Criteria) this;
        }

        public Criteria andPstateGreaterThan(Integer value) {
            addCriterion("pState >", value, "pstate");
            return (Criteria) this;
        }

        public Criteria andPstateGreaterThanOrEqualTo(Integer value) {
            addCriterion("pState >=", value, "pstate");
            return (Criteria) this;
        }

        public Criteria andPstateLessThan(Integer value) {
            addCriterion("pState <", value, "pstate");
            return (Criteria) this;
        }

        public Criteria andPstateLessThanOrEqualTo(Integer value) {
            addCriterion("pState <=", value, "pstate");
            return (Criteria) this;
        }

        public Criteria andPstateIn(List<Integer> values) {
            addCriterion("pState in", values, "pstate");
            return (Criteria) this;
        }

        public Criteria andPstateNotIn(List<Integer> values) {
            addCriterion("pState not in", values, "pstate");
            return (Criteria) this;
        }

        public Criteria andPstateBetween(Integer value1, Integer value2) {
            addCriterion("pState between", value1, value2, "pstate");
            return (Criteria) this;
        }

        public Criteria andPstateNotBetween(Integer value1, Integer value2) {
            addCriterion("pState not between", value1, value2, "pstate");
            return (Criteria) this;
        }

        public Criteria andPaddressIsNull() {
            addCriterion("pAddress is null");
            return (Criteria) this;
        }

        public Criteria andPaddressIsNotNull() {
            addCriterion("pAddress is not null");
            return (Criteria) this;
        }

        public Criteria andPaddressEqualTo(String value) {
            addCriterion("pAddress =", value, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressNotEqualTo(String value) {
            addCriterion("pAddress <>", value, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressGreaterThan(String value) {
            addCriterion("pAddress >", value, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressGreaterThanOrEqualTo(String value) {
            addCriterion("pAddress >=", value, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressLessThan(String value) {
            addCriterion("pAddress <", value, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressLessThanOrEqualTo(String value) {
            addCriterion("pAddress <=", value, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressLike(String value) {
            addCriterion("pAddress like", value, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressNotLike(String value) {
            addCriterion("pAddress not like", value, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressIn(List<String> values) {
            addCriterion("pAddress in", values, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressNotIn(List<String> values) {
            addCriterion("pAddress not in", values, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressBetween(String value1, String value2) {
            addCriterion("pAddress between", value1, value2, "paddress");
            return (Criteria) this;
        }

        public Criteria andPaddressNotBetween(String value1, String value2) {
            addCriterion("pAddress not between", value1, value2, "paddress");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueIsNull() {
            addCriterion("pGrowthValue is null");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueIsNotNull() {
            addCriterion("pGrowthValue is not null");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueEqualTo(String value) {
            addCriterion("pGrowthValue =", value, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueNotEqualTo(String value) {
            addCriterion("pGrowthValue <>", value, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueGreaterThan(String value) {
            addCriterion("pGrowthValue >", value, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueGreaterThanOrEqualTo(String value) {
            addCriterion("pGrowthValue >=", value, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueLessThan(String value) {
            addCriterion("pGrowthValue <", value, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueLessThanOrEqualTo(String value) {
            addCriterion("pGrowthValue <=", value, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueLike(String value) {
            addCriterion("pGrowthValue like", value, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueNotLike(String value) {
            addCriterion("pGrowthValue not like", value, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueIn(List<String> values) {
            addCriterion("pGrowthValue in", values, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueNotIn(List<String> values) {
            addCriterion("pGrowthValue not in", values, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueBetween(String value1, String value2) {
            addCriterion("pGrowthValue between", value1, value2, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPgrowthvalueNotBetween(String value1, String value2) {
            addCriterion("pGrowthValue not between", value1, value2, "pgrowthvalue");
            return (Criteria) this;
        }

        public Criteria andPemailIsNull() {
            addCriterion("pEmail is null");
            return (Criteria) this;
        }

        public Criteria andPemailIsNotNull() {
            addCriterion("pEmail is not null");
            return (Criteria) this;
        }

        public Criteria andPemailEqualTo(String value) {
            addCriterion("pEmail =", value, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailNotEqualTo(String value) {
            addCriterion("pEmail <>", value, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailGreaterThan(String value) {
            addCriterion("pEmail >", value, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailGreaterThanOrEqualTo(String value) {
            addCriterion("pEmail >=", value, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailLessThan(String value) {
            addCriterion("pEmail <", value, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailLessThanOrEqualTo(String value) {
            addCriterion("pEmail <=", value, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailLike(String value) {
            addCriterion("pEmail like", value, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailNotLike(String value) {
            addCriterion("pEmail not like", value, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailIn(List<String> values) {
            addCriterion("pEmail in", values, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailNotIn(List<String> values) {
            addCriterion("pEmail not in", values, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailBetween(String value1, String value2) {
            addCriterion("pEmail between", value1, value2, "pemail");
            return (Criteria) this;
        }

        public Criteria andPemailNotBetween(String value1, String value2) {
            addCriterion("pEmail not between", value1, value2, "pemail");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}